﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace CTManagerSoln
{
    public partial class FrmLoaiChungTu : Form
    {
        DataTable dt;
        bool isUpdate;
        public FrmLoaiChungTu()
        {
            InitializeComponent();
            this.FormBorderStyle = FormBorderStyle.FixedDialog;
            this.StartPosition = FormStartPosition.CenterScreen;
            this.MaximizeBox = false;
            this.MinimizeBox = false;
            this.TopMost = true;
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void FrmLoaiChungTu_Load(object sender, EventArgs e)
        {
            dt = new DataTable();
            dt.Columns.Add("MaLoaiChungTu");
            dt.Columns.Add("TenLoaiChungTu");
            dt.Columns.Add("Mota");
            LoadGrid();            
        }

        private void LoadGrid()
        {
            dt = new DataTable();
           dt= clsLoaichungtu.getLoaiChungTu();
            dataGridView1.DataSource = dt;
        }

        private void btnSave_Click(object sender, EventArgs e)
        {
            string Err = string.Empty;
            string maLoaiChungTu = txtmachungtu.Text;
            string tenLoaiChungTu = txttenchungtu.Text;
            string moTa = txtMota.Text;
            if (string.IsNullOrEmpty(maLoaiChungTu))
            {
                Err += "- Mã loại chứng từ chưa nhập. \n";
            }
            if (string.IsNullOrEmpty(tenLoaiChungTu))
            {
                Err += "- Tên loại chứng từ chưa nhập. \n";
            }

            if (Err.Length > 5)
            {
                MessageBox.Show(Err,"Thông báo");
                return;
            }
            else
            {
                if (clsLoaichungtu.getLoaiChungTu(maLoaiChungTu).Rows.Count < 1 && isUpdate)
                {
                    DialogResult result = MessageBox.Show("thêm mới loại chứng từ.", "Thông báo.",MessageBoxButtons.OKCancel);
                    if (result==DialogResult.OK)
                    {
                        clsLoaichungtu.Insert(maLoaiChungTu, tenLoaiChungTu, moTa);
                    }
                }
                else
                {
                    if (isUpdate)
                    {
                        clsLoaichungtu.Update(maLoaiChungTu, tenLoaiChungTu, moTa);
                    }
                    else
                    {
                        clsLoaichungtu.Insert(maLoaiChungTu, tenLoaiChungTu, moTa);
                    }
                }
                LoadGrid();
                resetInput();
                isUpdate = false;
            }
            
            
            //DataRow row;
            //bool isValidInput = true;
            //if (dataGridView1.Rows.Count >= 1)
            //{
            //    for (int i = 0; i < dataGridView1.Rows.Count; i++)
            //    {
            //        row = dt.NewRow();
            //        if (dataGridView1["MaLoaiChungTu", i].Value == null || dataGridView1["TenLoaiChungTu", i].Value == null)
            //        {
            //            isValidInput = false;
            //            continue;
            //        }
            //        row["MaLoaiChungTu"] = dataGridView1["MaLoaiChungTu", i].Value.ToString();
            //        row["TenLoaiChungTu"] = dataGridView1["TenLoaiChungTu", i].Value.ToString();
            //        dt.Rows.Add(row);
            //    }
            //}
            //if (!isValidInput)
            //{
            //    MessageBox.Show("dữ liệu nhập chưa đúng, tiếp tục lưu?", "dữ liệu chưa đúng", MessageBoxButtons.OK);
            //}
        }

        private void resetInput()
        {
            txtmachungtu.Text = "";
            txttenchungtu.Text = "";
            txtMota.Text = "";
        }

        private void dataGridView1_DoubleClick(object sender, EventArgs e)
        {
            int RowIndex = dataGridView1.SelectedCells[0].RowIndex;

            // get primary key base on row col index
            string strMaloaichungtu = dataGridView1["MaLoaiChungTu", RowIndex].FormattedValue.ToString();
            string strTenloaichungtu = dataGridView1["TenLoaiChungTu", RowIndex].FormattedValue.ToString();
            string strMota = dataGridView1["MoTa", RowIndex].FormattedValue.ToString();
            if (!string.IsNullOrEmpty(strMaloaichungtu) && !string.IsNullOrEmpty(strTenloaichungtu))
            {
                txtmachungtu.Text = strMaloaichungtu;
                txttenchungtu.Text = strTenloaichungtu;
                txtMota.Text = strMota;
                isUpdate = true;
            }
        }
    }
}
